The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for performing arithmetic operations using both large and small floating point values.
The term “floating point” refers to a method of representing real numbers in a way that can support a wide range of values. With a floating point format, numbers are generally represented approximately by a fixed number of significant digits and are scaled using base value and corresponding exponent. The base for the scaling is normally 2, 10, or 16, but can be any base value suitable to the particular implementation. The typical number that can be represented exactly is of the form: significant digits×baseexponent, e.g., 1.34×210. Within computing systems, such floating point formatted values comprise a significant bits portion (or mantissa portion) that represents the significant digits of the floating point value, and an exponent bits portion that represents the exponent portion of the floating point value, with the base value being assumed to be consistent within the computer system architecture, e.g., base of 2. Thus, floating point format provides the ability to represent a wide range of values that can range from relatively very large values to relatively very small values.